package org.hako.recite.word.tool.writer;

import java.io.File;
import java.io.OutputStream;

import org.hako.recite.word.parser.WordList;

/**
 * File writer for word list.
 * 
 * @since 0.4.9
 * @author <a href="mailto:xnnyygn@gmail.com">xnnyygn</a>
 */
public interface WordListFileWriter {

	/**
	 * Write word list to file.
	 * 
	 * @param wordList
	 * @param filePath
	 * @throws WordListWriteException
	 */
	public void write(WordList wordList, String filePath)
			throws WordListWriteException;

	/**
	 * Write word list to file.
	 * 
	 * @param wordList
	 * @param file
	 * @throws WordListWriteException
	 */
	public void write(WordList wordList, File file)
			throws WordListWriteException;

	/**
	 * Write word list to file.
	 * 
	 * @param wordList
	 * @param outputStream
	 * @throws WordListWriteException
	 */
	public void write(WordList wordList, OutputStream outputStream)
			throws WordListWriteException;
}
